home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus 2000 #5
/
Amiga Plus CD - 2000 - No. 5.iso
/
system
/
MUI
/
Developer
/
Autodocs
/
MUI_Palette.doc
< prev
next >
Wrap
Text File
|
2000-01-01
|
5KB
|
155 lines
TABLE OF CONTENTS
Palette.mui/Palette.mui
Palette.mui/MUIA_Palette_Entries
Palette.mui/MUIA_Palette_Groupable
Palette.mui/MUIA_Palette_Names
Palette.mui/Palette.mui
Palette class generates a (big) group of objects, alltogether
making up a powerful palette requester. Due to the new color
selection schemes of Kickstart 3.x, you won't get a "traditional"
palette requester with 2^n fields to fill in. These things
really stop making sense on nice 256 or true color screens.
Instead, MUI's palette class allows defining a list of colors
that the user should be able to adjust. Within a public screen
manager, this would e.g. be the DrawInfo pens for a specific
screen, within a terminal program maybe the eight ANSI colors.
Palette class uses a listview to let the user choose the
desired color, a coloradjust object to adjust this color
and a colorfield object that always shows the current color.
The user will also be able to concatenate several colors
in the list, defining a single color for several entries.
Palette.mui/MUIA_Palette_Entries
NAME
MUIA_Palette_Entries -- (V6 ) [I.G], struct MUI_Palette_Entry *
FUNCTION
Specify the colors that the user should be able to adjust
with this palette object.
You supply an array of MUI_Palette_Structures here, each
entry defining one color:
struct MUI_Palette_Entry
{
LONG mpe_ID;
ULONG mpe_Red;
ULONG mpe_Green;
ULONG mpe_Blue;
LONG mpe_Group;
};
mpe_ID : This entry is not used by palette class, you can
put in whatever you want, except the value
MUIV_Palette_Entry_End (==-1),
which terminates the array.
mpe_Red : 32-bit red component of the current color. This
field will be changed by palette class whenever
the user edits the color.
mpe_Green: 32-bit green component of the current color. This
field will be changed by palette class whenever
the user edits the color.
mpe_Blue : 32-bit blue component of the current color. This
field will be changed by palette class whenever
the user edits the color.
mpe_Group: Entries with the same mpe_Group value are
concatenated. Whenever a new color in the
listview is selected, all other colors with
the same mpe_Group get selected as well and
get adjusted all at once.
Entry concatenation can be changed by the user,
as long as you don't disable this feature with
the MUIA_Palette_Groupable attribute.
EXAMPLE
static struct MUI_Palette_Entry SystemDefaultPalette[] =
{
{ TEXTPEN ,0x00000000,0x00000000,0x00000000,0 },
{ SHINEPEN ,0xffffffff,0xffffffff,0xffffffff,1 },
{ SHADOWPEN ,0x00000000,0x00000000,0x00000000,0 },
{ FILLPEN ,0x66666666,0x88888888,0xbbbbbbbb,2 },
{ FILLTEXTPEN ,0xffffffff,0xffffffff,0xffffffff,1 },
{ BACKGROUNDPEN ,0xaaaaaaaa,0xaaaaaaaa,0xaaaaaaaa,3 },
{ HIGHLIGHTTEXTPEN,0xffffffff,0xffffffff,0xffffffff,1 },
{ BARDETAILPEN ,0x00000000,0x00000000,0x00000000,0 },
{ BARBLOCKPEN ,0xffffffff,0xffffffff,0xffffffff,1 },
{ BARTRIMPEN ,0x00000000,0x00000000,0x00000000,0 },
{ MUIV_Palette_Entry_End,0,0,0,0 },
};
SEE ALSO
MUIA_Palette_Names
Palette.mui/MUIA_Palette_Groupable
NAME
MUIA_Palette_Groupable -- (V6 ) [ISG], BOOL
FUNCTION
Enables/disables palette color grouping.
Defaults to TRUE.
SEE ALSO
MUIA_Palette_Entries
Palette.mui/MUIA_Palette_Names
NAME
MUIA_Palette_Names -- (V6 ) [ISG], char **
FUNCTION
Specify the names of a palette objects color entries.
Without names, the color listview just displays
"Color <n>" for each entry. If you supply an array
of names here, they are displayed instead. The
names array must have as many entries as the
array of MUI_Palette_Entry structures (without
its terminator).
EXAMPLE
static struct MUI_Palette_Entry ColorEntries[] =
{
{ TEXTPEN ,0x00000000,0x00000000,0x00000000,2 },
{ SHINEPEN ,0xffffffff,0xffffffff,0xffffffff,4 },
{ SHADOWPEN ,0x00000000,0x00000000,0x00000000,5 },
{ FILLPEN ,0x66666666,0x88888888,0xbbbbbbbb,3 },
{ FILLTEXTPEN ,0xffffffff,0xffffffff,0xffffffff,6 },
{ BACKGROUNDPEN ,0x00000000,0x00000000,0x00000000,7 },
{ HIGHLIGHTTEXTPEN,0xffffffff,0xffffffff,0xffffffff,8 },
{ BARDETAILPEN ,0x00000000,0x00000000,0x00000000,9 },
{ BARBLOCKPEN ,0xffffffff,0xffffffff,0xffffffff,1 },
{ BARTRIMPEN ,0x00000000,0x00000000,0x00000000,0 },
{ MUIV_Palette_Entry_End,0,0,0,0 },
};
static const char *ColorNames[] =
{
"Text" ,
"Bright Edges" ,
"Dark Edges" ,
"Active Window Bars" ,
"Active Window Titles",
"Background" ,
"Important Text" ,
"Menu Text" ,
"Menu Background" ,
"Menu Line"
};
po = PaletteObject,
MUIA_Palette_Entries, ColorEntries,
MUIA_Palette_Names , ColorNames,
End;
SEE ALSO
MUIA_Palette_Entries